//
//  UserService.h
//  share_business
//  用户相关
//  Created by 吴于凌 on 2017/9/23.
//  Copyright © 2017年 wyl. All rights reserved.
//

#import "BaseService.h"

@interface UserService : BaseService


/**
 收藏商品
 @param productId 商品id
 @param success   <#success description#>
 @param fail      <#fail description#>
 */
+(void)getUserFavoritesSet:(NSString *)productId success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 加入购物车
 
 @param productId     商品ID
 @param productNumber 购买数量
 @param productSpecId 商品规格
 @param success       <#success description#>
 @param fail          <#fail description#>
 */
+(void)getUserCartAdd:(NSString *)productId ProductNumber:(NSString *)productNumber productSpecId:(NSString *)productSpecId success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 购物车
 
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserCartList:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 编辑购物车
 
 @param goodId        商品id
 @param productNumber 购买商品数量
 @param success       <#success description#>
 @param fail          <#fail description#>
 */
+(void)getUserCartEdit:(NSString *)goodId productNumber:(NSString *)productNumber success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 删除购物车
 
 @param goodId  id
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserCartRemove:(NSString *)goodId success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 删除购物车 批量
 
 @param goodId  ids
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserCartBatchRemove:(NSString *)goodId success:(serviceSuccess)success failure:(serviceFailure)fail ;

//我的个人信息
+(void)getUser:(serviceSuccess)success failure:(serviceFailure)fail ;
//个人信息
+(void)getUserMyHome:(serviceSuccess)success failure:(serviceFailure)fail ;
/**
 信息设置
 
 @param nickName    <#nickName description#>
 @param sex         <#sex description#>
 @param region      <#region description#>
 @param regionCode  <#regionCode description#>
 @param personality <#personality description#>
 @param success     <#success description#>
 @param fail        <#fail description#>
 */
+(void)getUserHomeEditInfo:(NSString *)nickName sex:(NSString *)sex region:(NSString *)region regionCode:(NSString *)regionCode personality:(NSString *)personality success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 设置头像
 
 @param byteAvatar <#byteAvatar description#>
 @param success    <#success description#>
 @param fail       <#fail description#>
 */
+(void)getUserHomeEditAvatar:(NSString *)byteAvatar success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 设置昵称
 
 @param nickName <#nickName description#>
 @param success  <#success description#>
 @param fail     <#fail description#>
 */
+(void)getUserHomeEditNickname:(NSString *)nickName success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 我的订单列表
 
 @param state     -1全部 0待付款 1待发货  3待确认 4交易完成待评价 5交易完成已评价
 @param pageIndex 当前分页
 @param success   <#success description#>
 @param fail      <#fail description#>
 */
+(void)getUserOrderList:(NSString *)state pageIndex:(NSString *)pageIndex success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 订单详情
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserOrderDetail:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 物流详情
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getLogisticsDetail:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 取消订单
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserOrderCancel:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 确认收货
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserOrderConfirm:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 订单评价
 
 @param number     <#number description#>
 @param productId  <#productId description#>
 @param rage       <#rage description#>
 @param content    <#content description#>
 @param batchImage <#batchImage description#>
 @param success    <#success description#>
 @param fail       <#fail description#>
 */
+(void)getUserProductCommentComment:(NSString *)number productId:(NSString *)productId rage:(NSString *)rage content:(NSString *)content batchImage:(NSString *)batchImage success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 获取收获地址列表
 
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserAddressList:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 提交收获地址
 
 @param number     <#number description#>
 @param isDefault  <#isDefault description#>
 @param mobile     <#mobile description#>
 @param consignee  <#consignee description#>
 @param region     <#region description#>
 @param regionCode <#regionCode description#>
 @param address    <#address description#>
 @param success    <#success description#>
 @param fail       <#fail description#>
 */
+(void)getUserAddressEdit:(NSString *)number isDefault:(NSString *)isDefault Mobile:(NSString *)mobile consignee:(NSString*)consignee region:(NSString *)region regionCode:(NSString *)regionCode address:(NSString *)address success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 获取收获详情
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserAddressDetail:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 删除收获地址
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserAddressRemove:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 设置默认收货地址
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserAddressDefault:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

//银行卡列表
+(void)getUserBankCardList:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 进入银行卡（添加，编辑）
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserBankCardGetEdit:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 提交银行卡（添加，编辑）
 
 @param number      <#number description#>
 @param isDefault   <#isDefault description#>
 @param bankType    <#bankType description#>
 @param bankAccount <#bankAccount description#>
 @param bankCarNo   <#bankCarNo description#>
 @param openBank    <#openBank description#>
 @param IDCard      <#IDCard description#>
 @param success     <#success description#>
 @param fail        <#fail description#>
 */
+(void)getUserBankCardEdit:(NSString *)number isDefault:(NSString*)isDefault bankType:(NSString *)bankType bankAccount:(NSString *)bankAccount bankCardNo:(NSString *)bankCarNo OpenBank:(NSString *)openBank IDCard:(NSString *)IDCard success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 获取银行卡详情
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserBankCardDetail:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

/**
 删除银行卡
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserBankCardRemove:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;


//设置默认银行卡
/**
 <#Description#>
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserBankCardDefault:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;


//我的收藏列表
/**
 <#Description#>
 
 @param pageIndex <#pageIndex description#>
 @param success   <#success description#>
 @param fail      <#fail description#>
 */
+(void)getUserFavoritesList:(NSString *)pageIndex success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 //删除收藏
 
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserFavoritesRemove:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 //删除收藏，批量
 @param number  <#number description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getUserFavoritesBatchRemove:(NSString *)number success:(serviceSuccess)success failure:(serviceFailure)fail ;

//短信验证码
+(void)getSmsSendSMS:(NSString *)phone type:(NSString *)type  success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 //会员注册
 
 @param phone    <#phone description#>
 @param nickName <#nickName description#>
 @param SMSCode  <#SMSCode description#>
 @param pwd      <#pwd description#>
 @param success  <#success description#>
 @param fail     <#fail description#>
 */
+(void)getAccountRegister:(NSString *)phone nickName:(NSString *)nickName SMSCode:(NSString *)SMSCode pwd:(NSString *)pwd success:(serviceSuccess)success failure:(serviceFailure)fail ;


//会员密码登录
/**
 <#Description#>
 
 @param phone   <#phone description#>
 @param pwd     <#pwd description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getAccountLoginPwd:(NSString *)phone  pwd:(NSString *)pwd success:(serviceSuccess)success failure:(serviceFailure)fail ;


/**
 //会员短信验证码登录
 
 @param phone   <#phone description#>
 @param SMSCode <#SMSCode description#>
 @param Lat     <#Lat description#>
 @param Lng     <#Lng description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getAccountLoginSMSCode:(NSString *)phone SMSCode:(NSString *)SMSCode Lat:(NSString *)Lat Lng:(NSString *)Lng success:(serviceSuccess)success failure:(serviceFailure)fail ;


//修改密码
/**
 <#Description#>
 
 @param phone   <#phone description#>
 @param SMSCode <#SMSCode description#>
 @param NewPwd  <#NewPwd description#>
 @param success <#success description#>
 @param fail    <#fail description#>
 */
+(void)getAccountSetNewPassword:(NSString *)phone SMSCode:(NSString *)SMSCode NewPwd:(NSString *)NewPwd success:(serviceSuccess)success failure:(serviceFailure)fail ;



@end
